MySQLdb 遇到的问题

MySQLdb 遇到的问题

爬取得知乎想存入数据库,安装了MySQLdb后遇到了问题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import MySQLdb
import random

if __name__ == '__main__':
db = MySQLdb.connect('localhost', 'root', '123456', 'wenda', charset='utf8')
try:
cursor = db.cursor()
sql = 'insert into question(title, content, user_id, created_date, comment_count) values ("xxx", "xxx", 1, now(), 0)'
cursor.execute(sql)
qid = cursor.lastrowid
db.commit()
print qid
except Exception, e:
print e
db.rollback()
db.close()

运行报错

1
2
3
4
5
6
7
8
Traceback (most recent call last):
File "/Users/wangzhe/PycharmProjects/test/mysql.py", line 1, in <module>
import MySQLdb
File "/Library/Python/2.7/site-packages/MySQLdb/__init__.py", line 19, in <module>
import _mysql
ImportError: dlopen(/Library/Python/2.7/site-packages/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib
Referenced from: /Library/Python/2.7/site-packages/_mysql.so
Reason: image not found

解决办法:
.zshrc里加

1
export DYLD_LIBRARY_PATH="/usr/local/mysql/lib"

注意设置后source ~/.zshrc,如果source ~/.zshrc还不行,重启一下就行了